package com.lemon.system.api.domain;

import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.lemon.common.core.annotation.Excel;
import com.lemon.common.core.serializer.JsonLongDeserializer;
import com.lemon.common.core.serializer.JsonLongSerializer;
import com.lemon.common.core.base.BaseEntity;

/**
 * 包名称：com.lemon.system.domain
 * 类名称：BiUserThirdBind
 * 类描述：用户与第三方系统绑定关系对象 bi_user_third_bind
 * 创建人：@author lemon
 * 创建时间：2025-01-16
 */
public class BiUserThirdBind extends BaseEntity {
    private static final long serialVersionUID = 1L;

    /** 主键 */
    @JsonSerialize(using = JsonLongSerializer.class)
    @JsonDeserialize(using = JsonLongDeserializer.class)
    private Long id;

    /** 用户id */
    @Excel(name = "用户id")
    @JsonSerialize(using = JsonLongSerializer.class)
    @JsonDeserialize(using = JsonLongDeserializer.class)
    private Long userId;

    /** 第三方系统来源，如qq、gitee */
    @Excel(name = "第三方系统来源，如qq、gitee")
    private String thirdSource;

    /** 第三方系统账户名 */
    @Excel(name = "第三方系统账户名")
    private String thirdAccount;

    /** 第三方系统用户昵称 */
    @Excel(name = "第三方系统用户昵称")
    private String thirdUname;

    /** 第三方系统uuid */
    @Excel(name = "第三方系统uuid")
    private String thirdUuid;

    /** 启用状态，0否1是 */
    @Excel(name = "启用状态，0否1是")
    private String status;

    /** 是否删除。0否1是 */
    private String delFlag;

    public void setId(Long id) {
        this.id = id;
    }

    public Long getId() {
        return id;
    }
    public void setUserId(Long userId) {
        this.userId = userId;
    }

    public Long getUserId() {
        return userId;
    }
    public void setThirdSource(String thirdSource) {
        this.thirdSource = thirdSource;
    }

    public String getThirdSource() {
        return thirdSource;
    }
    public void setThirdAccount(String thirdAccount) {
        this.thirdAccount = thirdAccount;
    }

    public String getThirdAccount() {
        return thirdAccount;
    }
    public void setThirdUname(String thirdUname) {
        this.thirdUname = thirdUname;
    }

    public String getThirdUname() {
        return thirdUname;
    }
    public void setThirdUuid(String thirdUuid) {
        this.thirdUuid = thirdUuid;
    }

    public String getThirdUuid() {
        return thirdUuid;
    }
    public void setStatus(String status) {
        this.status = status;
    }

    public String getStatus() {
        return status;
    }
    public void setDelFlag(String delFlag) {
        this.delFlag = delFlag;
    }

    public String getDelFlag() {
        return delFlag;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("userId", getUserId())
            .append("thirdSource", getThirdSource())
            .append("thirdAccount", getThirdAccount())
            .append("thirdUname", getThirdUname())
            .append("thirdUuid", getThirdUuid())
            .append("status", getStatus())
            .append("remark", getRemark())
            .append("createTime", getCreateTime())
            .append("createBy", getCreateBy())
            .append("updateTime", getUpdateTime())
            .append("updateBy", getUpdateBy())
            .append("delFlag", getDelFlag())
            .toString();
    }
}
